Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrations as replicas refactor #343

Merged
merged 24 commits into from
Dec 5, 2024

Conversation

Dany9966
Copy link
Contributor

This PR adds all the core changes regarding the removal of the normal migration operation and replacing that with the replica workflow. This will give users full control of when to deploy the migration on the destination platform. Similar to replica deployments, this adds migration deployments (which still are one-time).
Meaningful changes that this PR adds:

  • Adds scenario field to the Replica model, which saves whether the transfer scenario is either a one-time migration, or a DR replica;
  • Adds deployments API paths, views, operations & policies;
  • Removes the migrations API paths;
  • Various licensing and UI fixes;

@Dany9966 Dany9966 force-pushed the migrations-as-replicas branch 5 times, most recently from 8012f7b to 8e5aeab Compare November 5, 2024 15:52
@Dany9966 Dany9966 force-pushed the migrations-as-replicas branch 4 times, most recently from b5947dd to 09283ab Compare November 7, 2024 12:12
@Dany9966 Dany9966 force-pushed the migrations-as-replicas branch 4 times, most recently from 14af745 to 0a59754 Compare November 14, 2024 16:36
aznashwan and others added 15 commits November 15, 2024 12:09
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Adds the 'scenario' field to the `Replica` DB model and afferent
DB API functions for creating/filtering Replicas based on it.

The `scenario` can be one of:
    * `replica` (the auto-default for all newly-created replicas)
    * `live_migration` (special case for replicas-as-migrations)

Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Update the conductor layer for separate handling of Live Migrations and
deployments.

Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
Signed-off-by: Nashwan Azhari <nazhari@cloudbasesolutions.com>
This patch makes sure that reservations only get deleted when a
Transfer action is being deleted.
Fixes an edge-case where if a reservation cannot be found for an existing
replica, and the minion pool set to it is also in an invalid state, a new
reservation would be created but never saved to DB because of the minion pool
error. This patch makes sure that the minion pool validation is done before
the reservation checks when creating replica executions.
Raises proper exception when user attempts to re-execute or re-deploy an already fulfilled
migration action.
Updates some conductor server unit tests
Refactors include mostly renames of Replica into Transfer, and Migration into
Deployment. They also include some DB column refactoring (removing unnecessary
ones).
@Dany9966 Dany9966 force-pushed the migrations-as-replicas branch from d70c4f4 to 3bad643 Compare November 15, 2024 10:54
@Dany9966 Dany9966 force-pushed the migrations-as-replicas branch 3 times, most recently from d27636b to 41b9db9 Compare November 19, 2024 15:40
@Dany9966 Dany9966 force-pushed the migrations-as-replicas branch from 41b9db9 to cf0c72c Compare November 28, 2024 14:41
@Dany9966 Dany9966 force-pushed the migrations-as-replicas branch from cf0c72c to ee49009 Compare December 3, 2024 12:45
@Dany9966 Dany9966 merged commit 812c0d2 into cloudbase:master Dec 5, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants